$(".toggle-pass").click(function(){
    if($(this).hasClass("hide")){
        $(".passphrase").attr("type", "password");
        $(this).removeClass("hide");
    } else {
        $(".passphrase").attr("type", "text");
        $(this).addClass("hide");
    }
});

$(".btn-encrypt").click(function(){
    var visiblePass = $(".passphrase").attr("type") == "text";
    if(visiblePass){
        $(".toggle-pass").click();
    }
    if($(".textarea").val().length == 0){
        $(".textarea").addClass("shake");
        setTimeout(function(){
            $(".textarea").removeClass("shake");
        },500);
    } else if($(".passphrase").val().length == 0){
        $(".pass-wrap").addClass("shake");
        setTimeout(function(){
            $(".pass-wrap").removeClass("shake");
        },500);
    } else {
        var encrypted = CryptoJS.AES.encrypt(
            $(".textarea").val(),
            $(".passphrase").val()
        );
        $(".textarea").val(encrypted.toString());
    }
    if(visiblePass){
        $(".toggle-pass").click();
    }
});
$(".btn-decrypt").click(function(){
    var visiblePass = $(".passphrase").attr("type") == "text";
    if(visiblePass){
        $(".toggle-pass").click();
    }
    var decrypted = CryptoJS.AES.decrypt(
        $(".textarea").val(),
        $(".passphrase").val()
    );
    if(decrypted.toString().length > 0){
        $(".textarea").val(decrypted.toString(CryptoJS.enc.Utf8));
    } else {
        $(".pass-wrap").addClass("shake");
        setTimeout(function(){
            $(".pass-wrap").removeClass("shake");
        },500);
    }
    if(visiblePass){
        $(".toggle-pass").click();
    }
});
